hbase shell中执行list命令报错:ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing
问题描述:
今天在测试环境中,搭建hbase环境,执行list命令之后,报错:
hbase(main):001:0> list TABLE ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing at org.apache.hadoop.hbase.master.HMaster.checkInitialized(HMaster.java:2642) at org.apache.hadoop.hbase.master.MasterRpcServices.getTableNames(MasterRpcServices.java:941) at org.apache.hadoop.hbase.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java:63368) at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2354) at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:124) at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:297) at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:277) Here is some help for this command: List all user tables in hbase. Optional regular expression parameter could be used to filter the output. Examples: hbase> list hbase> list 'abc.*' hbase> list 'ns:abc.*' hbase> list 'ns:.*'
问题解决:
1.在网上找了一下,说的是,底层的使用的是本地的文件系统,没有使用hdfs
2.将base-site.xml文件中的hbase.rootdir进行修改,改为以下的内容:
<property>
<name>hbase.rootdir</name>
<value>hdfs://redhat6:9000/hbase</value>
</property>
备注:将hbase.rootdir改为hdfs的目录,不是使用本地的目录
3.修改之后,重启hbase,在此执行list,问题解决.
文档创建时间:2018年5月4日10:45:49